application.properties বা application.yml ফাইলে Security কনফিগারেশন

Java Technologies - স্প্রিং সিকিউরিটি (Spring Security) - Spring Security Setup এবং কনফিগারেশন
184

Spring Security-এর কিছু সাধারণ কনফিগারেশন আপনি application.properties বা application.yml ফাইলে সেট করতে পারেন। এটি মূলত সহজ কনফিগারেশনগুলির জন্য ব্যবহৃত হয়, যেমন ডিফল্ট লগইন পৃষ্ঠা কাস্টমাইজেশন, CSRF সক্ষম/অক্ষম করা, এবং HTTP Basic বা Form Login সক্রিয় করা।


application.properties ফাইলে Security কনফিগারেশন

# Spring Security Default User Credentials
spring.security.user.name=admin  # Default username
spring.security.user.password=admin123  # Default password
spring.security.user.roles=ADMIN,USER  # Default roles

# Custom Login Page
server.servlet.context-path=/myapp  # Change context path
server.port=8080  # Change server port

# CSRF Configuration
spring.security.filter.dispatcher-types=ASYNC, ERROR, REQUEST  # Dispatcher types for security filters

# Enable/Disable Security Features
management.endpoints.web.exposure.include=*  # Enable all actuator endpoints

application.yml ফাইলে Security কনফিগারেশন

spring:
  security:
    user:
      name: admin # Default username
      password: admin123 # Default password
      roles: ADMIN,USER # Default roles

server:
  servlet:
    context-path: /myapp # Change context path
  port: 8080 # Change server port

management:
  endpoints:
    web:
      exposure:
        include: "*" # Enable all actuator endpoints

Common Use Cases

1. Default Username এবং Password কনফিগার করা

Spring Security যোগ করার পরে, ডিফল্ট ব্যবহারকারী user এবং পাসওয়ার্ড কনসোলে জেনারেট হয়। আপনি এটি application.properties বা application.yml-এ কাস্টমাইজ করতে পারেন:

application.properties

spring.security.user.name=myuser
spring.security.user.password=mypassword

application.yml

spring:
  security:
    user:
      name: myuser
      password: mypassword

2. CSRF Protection Disable করা (শুধু Development Environment-এর জন্য)

CSRF সুরক্ষা অক্ষম করার জন্য, নিচের কনফিগারেশনটি ব্যবহার করুন:

application.properties

spring.security.filter.csrf.enabled=false

application.yml

spring:
  security:
    filter:
      csrf:
        enabled: false

3. HTTPS/SSL সক্ষম করা

আপনার অ্যাপ্লিকেশন HTTPS সক্ষম করতে:

application.properties

server.ssl.enabled=true
server.ssl.key-store=classpath:keystore.p12
server.ssl.key-store-password=yourpassword
server.ssl.key-store-type=PKCS12
server.ssl.key-alias=youralias

application.yml

server:
  ssl:
    enabled: true
    key-store: classpath:keystore.p12
    key-store-password: yourpassword
    key-store-type: PKCS12
    key-alias: youralias

4. Custom Login এবং Logout URL সেট করা

Spring Security Form Login বা Logout URL কাস্টমাইজ করা যেতে পারে:

application.properties

server.servlet.context-path=/app
spring.security.oauth2.client.registration.google.client-id=your-client-id
spring.security.oauth2.client.registration.google.client-secret=your-client-secret

5. Actuator Security Management

Actuator এন্ডপয়েন্ট নিরাপদ রাখতে:

application.properties

management.endpoints.web.exposure.include=health,info
management.endpoint.health.show-details=always
management.security.enabled=true

Advanced Configuration

যদি আপনাকে আরও কাস্টমাইজ করতে হয় (যেমন Authentication Provider, Authorization Rules), তখন আপনাকে একটি কাস্টম Java Configuration ক্লাস ব্যবহার করতে হবে। application.properties বা application.yml-এ সীমিত কনফিগারেশন করা যায়।

নোট

  1. Production Environment-এ পাসওয়ার্ড কখনোই হার্ডকোড করবেন না।
  2. Sensitive তথ্যগুলি Environment Variables বা External Configuration Server থেকে সংগ্রহ করুন।

Spring Security এবং application.properties/application.yml-এর সমন্বয় আপনার প্রাথমিক সেটআপকে দ্রুত এবং সহজ করে তোলে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...